# -*- coding: utf-8 -*-

#funziona, con indirizzi IP, domini e altro (anche reverse lookup, dovrebbe essere il nome dell'host trovato facendo il reverse
#dns lookup dell'indirizzo ip) e se ritorna qualche stringa allora il dominio o l'ip sottoposto è un malware
#la descrizione sopra era per malware domain list.com non so se vale anceh per alexa

#alexa mi ha bloccato!!! peccato era un bello strumento

import urllib2
import sys
#import re
#import string
from BeautifulSoup import BeautifulSoup

#myParameters = { "q" : "%s" % (sys.argv[1],), "r" : "site_siteinfo", "p" : "bigtop"  }

myURL = "http://www.alexa.com/siteinfo/%s#trafficstats" % (sys.argv[1],)
##!myURL = "http://www.alexa.com/search?%s" % (urllib.urlencode(myParameters),)

data = urllib2.urlopen(myURL).read()
#data = re.sub( r'<[^>]*>', ' ', data ).strip()

#print data #stampa di test

    
soup = BeautifulSoup(data)
prec = " "
for tag in soup.findAll("a", href=True):
    #print tag["href"] #stampa di test
    line = tag["href"]
    #print line #stampa di test
    if line.find("/topsites/category/") == 0:
        if prec == " ":
            prec = line
            #print prec #stampa di test
        elif line.find(prec) == 0:
            prec = line
            #print prec #stampa di test
        else:
            prec = prec.replace("/topsites/category/","")
            prec = prec.replace("/",",")
            prec = prec.replace("_"," ")
            print prec[:-1]
            prec = " "
        #print line #stampa di test
prec = prec.replace("/topsites/category/","")
prec = prec.replace("/",",")
prec = prec.replace("_"," ")
print prec[:-1]

        
if prec == " ":
    print "This site is not categorized"
#print sys.argv[1], data #stampa di test
